package com.ruoyi.wechat.service;

import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.wechat.domain.WxMpAuthorizationUrl;
import com.ruoyi.weixin.domain.LoginMaDTO;

/**
 * @author cj
 */
public interface IWeChatBaseService {

    /**
     * 根据 appID ，screat 获取 access_token
     * @return jsonObject
     */
    public R<String> getAccessToken();

    public R<JSONObject> getUserInfo(String openId);

    /**
     * 网页授权获取 openID 和 access_token
     * @param code
     * @return
     */
    public LoginMaDTO webAuth(String code);

    /**
     * 网页授权获取用户详细信息
     * @param code
     * @return
     */
    public String webLogin(String code);

    /**
     * 获取请求链接
     * @param wxMpAuthorizationUrl
     * @return
     */
    public String getWebAuthUrl(WxMpAuthorizationUrl wxMpAuthorizationUrl);

    /**
     * 按code获取openid
     * @param code
     * @return
     */
    public R<JSONObject> getOpenIdByCode(String code);

    public String getSignature(String url);


}
